/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Persistencia;

/**
 *
 * @author Facundo
 */
import Logica.Usuario;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.LinkedList;

public class ADOUsuario {

    private Singleton_Conexion datosconexion;
    Connection conexion;

    public ADOUsuario() {
        try {
            Class.forName(datosconexion.getInstancia().getDriver());
            conexion = DriverManager.getConnection(datosconexion.getInstancia().getProtocolo());
        } catch (ClassNotFoundException ex) {
            ex.printStackTrace();
        } catch (java.sql.SQLException e1) {
            e1.printStackTrace();
        }
    }

    public boolean insertarUsuario(Usuario a) {
        String sentencia = "Insert Into usuario (nombre_usuario,password,nombre,apellido,telefono,direccion,nombre_rol) values(?,?,?,?,?,?)";
        PreparedStatement st;
        try {

            st = conexion.prepareStatement(sentencia);
            st.setString(1, a.getNombreUsuario());
            st.setString(2, a.getPassword());
            st.setString(3, a.getNombre());
            st.setString(4, a.getApellido());
            st.setString(5, a.getTelefono());
            st.setString(6, a.getDireccion());
            st.setString(7, a.getRol());
            st.execute();
            st.close();
            return true;
        } catch (java.sql.SQLException e1) {
            e1.printStackTrace();
            return false;
        }

    }
    /*
     * trae solo los nombres de usuarios para cargar el combox de usuarios
     */

    public LinkedList traerSoloUsuarios() {
        ResultSet rs = null;
        LinkedList lista = new LinkedList();
        try {
            PreparedStatement st;
            String sentencia = "select nombre_usuario from usuario";
            st = conexion.prepareStatement(sentencia);
            rs = st.executeQuery();

            while (rs.next()) {
                Usuario usr = new Usuario();
                usr.setNombreUsuario(rs.getString("nombre_usuario"));
                lista.add(usr);
            }
        } catch (java.sql.SQLException e1) {
            System.out.println(e1.toString());
        }
        return lista;
    }
}
